// pages/categoryDetail/categoryDetail.js
Page({
  data: {
    baseURL: "http://192.168.1.20:3000/",
    // 页面要显示的数组
    list: [],
    // 标题数组
    titles: [
      { id: 0, text: "最新", order: "new" },
      { id: 1, text: "热门", order: "hot" }
    ],
    // 接口参数
    params: {
      skip: 0,
      limit: 12,
      order: "new"
    },
    // 总条数
    total: 0,
    // 分类id
    id: ""
  },
  // 页面加载完毕
  onLoad(options) {
    this.setData({ id: options.id })
    this.getCategoryDetail();
  },
  // 获取分类详情数据
  getCategoryDetail() {
    // 显示加载中
    wx.showLoading({
      title: "加载中"
    });
    wx.request({
      url: 'http://192.168.1.20:3000/category/' + this.data.id,
      data: this.data.params,
      success: (result) => {
        console.log(result);
        this.setData({
          // 数组的合并
          list: [...this.data.list, ...result.data.data.list],
          total: result.data.data.total
        });
        // 隐藏加载中
        wx.hideLoading();
      },
    });
  },
  // 页面不需要放 methods对象 组件才需要
  scrolltolower() {
    // 1 先判断一下还有没有更多数据
    if (this.data.params.skip >= this.data.total) {
      wx.showToast({
        title: '没有更多数据了',
        icon: 'none',
      });
      return;
    }

    var params = this.data.params;
    // params.skip=params.skip+12;
    params.skip += 12;
    // 重新加载新的页面数据
    this.getCategoryDetail();
  },
  // tabs的选中的索引的值改变事件
  handleReceiveIndex(event) {
    // console.log(event);
    // 1 获取被点击的标题的索引
    var index = event.detail;
    // 2 根据索引来获取 hot或者new
    var order = this.data.titles[index].order;
    // 3 将它设置到data的params中
    var params = this.data.params;
    params.order = order;
    // 5.3 重置 skip值
    params.skip = 0;

    // 4 重新设置回 data中
    this.setData({
      params: params,
      // 5.2 先清空旧的数组数据 
      list: [],

    })
    // 5 重新发起新的请求 来获取 改变后的数据
    // 5.1 因为之前在代码中是 写死了 数据做合并
    // 5.2 先清空旧的数组数据 
    this.getCategoryDetail();
    // 6 存在bug

  }
})